﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DADOS.auxiliares;
using DADOS.usuario;

namespace PROAD.atendimento.Forms
{
    public partial class EtapaPreditivaAnamnese : System.Web.UI.Page
    {
        DADOS.auxiliares.metMedicamentos metMed = new metMedicamentos();
        DADOS.usuario.metAnamnese metAna = new metAnamnese();

        protected void Page_Load(object sender, EventArgs e)
        {
            if(!IsPostBack)
            {
                
                if (Session["CO_USUARIO"] != null)
                {
                    lblUsurario.Text = "Nome do Paciente: " + Session["NO_NOME"];

                    hdfCodUsuario.Value = Session["CO_USUARIO"].ToString();

                    var objAnamnese = metAna.SelecionarAnamnese(Convert.ToInt32(hdfCodUsuario.Value));

                    if (objAnamnese != null)
                    {
                        hdfCodAnamnese.Value = objAnamnese.CO_ANAMNESE.ToString();
                        CarregarForm(objAnamnese);
                        btnEditarDm1.Visible = true;
                        btnEditPros.Visible = true;
                        btnSalvarDm1.Visible = false;
                        btnSalvaPros.Visible = false;
                    }else
                    {
                        btnEditarDm1.Visible = false;
                        btnEditPros.Visible = false;
                        btnSalvarDm1.Visible = true;
                        btnSalvaPros.Visible = true;
                    }

                }else
                {
                    Response.Redirect("/atendimento/Consulta/ConsultaUsuarioParaAtm.aspx");
                }
            }
        }
        

        protected void rtsDadoPaciente_TabClick(object sender, Telerik.Web.UI.RadTabStripEventArgs e)
        {
            if (e.Tab.TabIndex == 0)
            {
                Response.Redirect("/atendimento/Consulta/ConsultaDadosPaciente.aspx");
            }
            if (e.Tab.TabIndex == 2)
            {
                var metUsuario = new DADOS.usuario.metPaciente();
                if (metUsuario.LiberarGestaoCuidado(Convert.ToInt32(hdfCodUsuario.Value)))
                {
                    Response.Redirect("/atendimento/Forms/FormGestaoCuidados.aspx");
                }else
                {
                    txtTituloMsn.Text = "Alerta";
                    txtTextoMsn.Text = "Etapa diagnostica não está completa!";
                    ModalPopupMsn.Show();
                }

            }
        }
        protected void rdsEtapa_TabClick(object sender, Telerik.Web.UI.RadTabStripEventArgs e)
        {
            switch (e.Tab.TabIndex)
            {
                case 3:
                    Response.Redirect("/atendimento/Forms/EtapaPreditivaAnamnese.aspx");
                    break;
                case 4:
                    Response.Redirect("/atendimento/Forms/FormAvd.aspx");
                    break;
                case 5:
                    Response.Redirect("/atendimento/Forms/FormSocioEconomico.aspx");
                    break;
                case 6:
                    Response.Redirect("/atendimento/Forms/FormClassificacaoFinal.aspx");
                    break;
            }
        }

        protected void rblSaude_SelectedIndexChanged(object sender, EventArgs e)
        {
            pnlDoenca.Visible = rblSaude.SelectedValue == "1";
        }

        protected void rblMedicamentos_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (rblMedicamentos.SelectedValue == "1")
            {
                lkbMedicamentos.Visible = true;
                gridMedicamentos.Visible = true;
                CarregarMedicamento();
            }
            else
            {
                lkbMedicamentos.Visible = false;
                gridMedicamentos.Visible = false;
            }
        }

        protected void lkbMedicamentos_Click(object sender, EventArgs e)
        {
           ModalMedicamentos.Show();
        }

        public bool validarMedicamento()
        {
            if(string.IsNullOrEmpty(txtNomeMed.Text))
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Nome do medicamento obrigatório";
                txtNomeMed.Focus();
                ModalPopupMsn.Show();
                return false;
            }
            if (string.IsNullOrEmpty(txtHora.Text))
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Horário do medicamento obrigatório";
                txtHora.Focus();
                ModalPopupMsn.Show();
                return false;
            }
            if (string.IsNullOrEmpty(txtDosagem.Text))
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Dosagem do medicamento obrigatório";
                txtDosagem.Focus();
                ModalPopupMsn.Show();
                return false;
            }
            return true;
        }

        protected void btnSalvarMedicamento_Click(object sender, EventArgs e)
        {
            var objMedicamento = new DADOS.TB_MEDICAMENTO();
            if(validarMedicamento())
            {
                objMedicamento.CO_PROFISSIONAL = Convert.ToInt32(Session["CO_PROFISSIONAL"]);
                objMedicamento.CO_USUARIO = Convert.ToInt32(Session["CO_USUARIO"]);
                objMedicamento.DS_DOSAGEM = txtDosagem.Text;
                objMedicamento.DS_HORARIO = txtHora.Text;
                objMedicamento.DT_INCLUSAO = DateTime.Now;
                objMedicamento.NO_NOME = txtNomeMed.Text;  
            }

            try
            {
                metMed.IncluirMedUsuario(objMedicamento);
                txtTituloMsn.Text = "ALERTA";
                CarregarMedicamento();
                txtTextoMsn.Text = "Medicamento foi incluído com sucesso.";
                ModalPopupMsn.Show();
            }
            catch (Exception)
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Medicamento não foi incluído, tente mais tarde.";
                ModalPopupMsn.Show();
            }
        }

        protected void CarregarForm(DADOS.TB_ANAMNESE objAnamnese)
        {

            rblSaude.SelectedValue = objAnamnese.NR_QUESTAO_1.ToString();

            if (objAnamnese.NR_QUESTAO_1 == 1)
            {
                pnlDoenca.Visible = true;
            }

            if (objAnamnese.NR_QUESTAO_1_HAS == 1) CkbHAS.Checked = true;
            if (objAnamnese.NR_QUESTAO_1_DM == 1) CkbDM.Checked = true;
            if (objAnamnese.NR_QUESTAO_1_AVE == 1) CkbAVE.Checked = true;
            if (objAnamnese.NR_QUESTAO_1_ALZHEIMER == 1) CkbALZHEIMER.Checked = true;
            if (objAnamnese.NR_QUESTAO_1_NEOPLASIAS == 1) CkbNEOPLASIAS.Checked = true;
            if (objAnamnese.NR_QUESTAO_1_ARTROSES == 1) CkbARTROSES.Checked = true;
            if (objAnamnese.NR_QUESTAO_1_OUTROS == 1) CkbOUTROS.Checked = true;
            
            txtOutrosSaude.Text = objAnamnese.NR_QUESTAO_1_1_OUTROS;

            ddlFumante.SelectedValue = objAnamnese.NR_QUESTAO_2.ToString();
            txtQueixas.Text = objAnamnese.NR_QUESTAO_3;

            rblMedicamentos.SelectedValue = objAnamnese.NR_QUESTAO_4.ToString();

            if (objAnamnese.NR_QUESTAO_4 == 1)
            {
                CarregarMedicamento();
            }

            ddlEstConsciencia.SelectedValue = objAnamnese.NR_HAB_1.ToString();
            ddlEstEmocional.SelectedValue = objAnamnese.NR_HAB_2.ToString();
            ddlComunicacao.SelectedValue = objAnamnese.NR_HAB_3.ToString();

            ckbAparenGeral1.Checked = objAnamnese.NR_HAB_4_1 == 1;
            ckbAparenGeral2.Checked = objAnamnese.NR_HAB_4_2 == 1;
            ckbAparenGeral3.Checked = objAnamnese.NR_HAB_4_3 == 1;
            ckbAparenGeral4.Checked = objAnamnese.NR_HAB_4_4 == 1;
            ckbAparenGeral5.Checked = objAnamnese.NR_HAB_4_5 == 1;
            ckbAparenGeral6.Checked = objAnamnese.NR_HAB_4_6 == 1;

            ddlDorDiaDia.SelectedValue = objAnamnese.NR_HAB_5.ToString();
            ddlVontadeLazer.SelectedValue = objAnamnese.NR_HAB_6.ToString();
            ddlDificDormir.SelectedValue = objAnamnese.NR_HAB_7.ToString();
            ddlRemedioDormir.SelectedValue = objAnamnese.NR_HAB_8.ToString();
            ddlMemoria.SelectedValue = objAnamnese.NR_HAB_9.ToString();
            ddlVisual.SelectedValue = objAnamnese.NR_HAB_10.ToString();
            ddlEscutar.SelectedValue = objAnamnese.NR_HAB_13.ToString();
            ddlHigieneBucal.SelectedValue = objAnamnese.NR_HAB_12.ToString();

            ckbPele1.Checked = objAnamnese.NR_HAB_11_1 == 1;
            ckbPele2.Checked = objAnamnese.NR_HAB_11_2 == 1;
            ckbPele3.Checked = objAnamnese.NR_HAB_11_3 == 1;
            ckbPele4.Checked = objAnamnese.NR_HAB_11_4 == 1;
            ckbPele5.Checked = objAnamnese.NR_HAB_11_5 == 1;
            ckbPele6.Checked = objAnamnese.NR_HAB_11_6 == 1;
          
            ddlHigieneCorp.SelectedValue = objAnamnese.NR_HAB_14.ToString();

            ddlAlimentacao.SelectedValue = objAnamnese.NR_ALI_1.ToString();
            ddlEngasgo.SelectedValue = objAnamnese.NR_ALI_2.ToString();
            ddlEstNutri.SelectedValue = objAnamnese.NR_ALI_3.ToString();
            txtLiquido.Text = objAnamnese.DS_ALI_4;
            ddlAbdome.SelectedValue = objAnamnese.NR_ALI_5.ToString();
            ddlVisceromegalia.SelectedValue = objAnamnese.NR_ALI_5_2.ToString();
            ddlMassaPalp.SelectedValue = objAnamnese.NR_ALI_5_3.ToString();
            txtObsLocal.Text = objAnamnese.NR_ALI_5_OBS;
            
            ddlAbdomeRha.SelectedValue = objAnamnese.NR_ALI_5_1.ToString();
            ddlCorUrina.SelectedValue = objAnamnese.NR_ALI_6.ToString();
            ddlEliminacaoUrinaria.SelectedValue = objAnamnese.NR_ALI_7.ToString();
            txtDebUrunario.Text = objAnamnese.NR_ALI_7_1.ToString();
            ddlConsiFezes.SelectedValue = objAnamnese.NR_ALI_8.ToString();
            ddlEliminacaoIntestinal.SelectedValue = objAnamnese.NR_ALI_9.ToString();
            ddlFrequenciaIntest.SelectedValue = objAnamnese.NR_ALI_9_1.ToString();

            if (objAnamnese.NR_ALI_10_PLEGIA_MMSS == 1) ckbMmssPlegia.Checked = true;
            if (objAnamnese.NR_ALI_10_PARESIA_MMSS == 1) ckbMmssParesia.Checked = true;
            if (objAnamnese.NR_ALI_10_PARESTIA_MMSS == 1) ckbMmssParestia.Checked = true;
            if (objAnamnese.NR_ALI_10_AMPUTACAO_MMSS == 1) ckbMmssAmputacao.Checked = true;
            if (objAnamnese.NR_ALI_10_PLEGIA_MMII == 1) ckbMmiiPlegia.Checked = true;
            if (objAnamnese.NR_ALI_10_PARESIA_MMII == 1) ckbMmiiParesia.Checked = true;
            if (objAnamnese.NR_ALI_10_PARESTIA_MMII == 1) ckbMmiiParestia.Checked = true;
            if (objAnamnese.NR_ALI_10_AMPUTACAO_MMII == 1) ckbMmiiAmputacao.Checked = true;

            ddlAvaliacaoAnamnese.SelectedValue = objAnamnese.NR_AVALIACAO.ToString();
            txtJustificativaAnamnse.Text = objAnamnese.DS_AVALIACAO_JUSTIFICATIVA;

            txtPa.Text = objAnamnese.DS_DADOS_PA;
            txtFr.Text = objAnamnese.DS_DADOS_FR;
            txtTemp.Text = objAnamnese.DS_DADOS_T;
            txtPressao.Text = objAnamnese.DS_DADOS_P;
            txtAp.Text = objAnamnese.DS_DADOS_AP;
            txtAc.Text = objAnamnese.DS_DADOS_AC;
        }

        protected DADOS.TB_ANAMNESE CarregarObjeto()
        {
            var objAnamnese = new DADOS.TB_ANAMNESE();

            objAnamnese.CO_USUARIO = Convert.ToInt32(hdfCodUsuario.Value);
            objAnamnese.CO_PROFISSIONAL = Convert.ToInt32(Session["CO_PROFISSIONAL"]);
            objAnamnese.DT_ATUALIZACAO = DateTime.Now;
            objAnamnese.NR_QUESTAO_1 = Convert.ToInt32(rblSaude.SelectedValue);
            objAnamnese.NR_QUESTAO_1_HAS = CkbHAS.Checked?1:0;
            objAnamnese.NR_QUESTAO_1_DM = CkbDM.Checked ? 1 : 0;
            objAnamnese.NR_QUESTAO_1_AVE = CkbAVE.Checked ? 1 : 0;
            objAnamnese.NR_QUESTAO_1_ALZHEIMER = CkbALZHEIMER.Checked ? 1 : 0;
            objAnamnese.NR_QUESTAO_1_NEOPLASIAS = CkbNEOPLASIAS.Checked ? 1 : 0;
            objAnamnese.NR_QUESTAO_1_ARTROSES = CkbARTROSES.Checked ? 1 : 0;
            objAnamnese.NR_QUESTAO_1_OUTROS = CkbOUTROS.Checked ? 1 : 0;
            objAnamnese.NR_QUESTAO_1_1_OUTROS = txtOutrosSaude.Text;
            objAnamnese.NR_QUESTAO_2 = Convert.ToInt32(ddlFumante.SelectedValue);
            objAnamnese.NR_QUESTAO_3 = txtQueixas.Text;
            objAnamnese.NR_QUESTAO_4 = Convert.ToInt32(rblMedicamentos.SelectedValue);

            objAnamnese.NR_HAB_1 = Convert.ToInt32(ddlEstConsciencia.SelectedValue);
            objAnamnese.NR_HAB_2 = Convert.ToInt32(ddlEstEmocional.SelectedValue);
            objAnamnese.NR_HAB_3 = Convert.ToInt32(ddlComunicacao.SelectedValue);
            objAnamnese.NR_HAB_4_1 = ckbAparenGeral1.Checked ? 1 : 0;
            objAnamnese.NR_HAB_4_2 = ckbAparenGeral2.Checked ? 1 : 0;
            objAnamnese.NR_HAB_4_3 = ckbAparenGeral3.Checked ? 1 : 0;
            objAnamnese.NR_HAB_4_4 = ckbAparenGeral4.Checked ? 1 : 0;
            objAnamnese.NR_HAB_4_5 = ckbAparenGeral5.Checked ? 1 : 0;
            objAnamnese.NR_HAB_4_6 = ckbAparenGeral6.Checked ? 1 : 0;
            objAnamnese.NR_HAB_5 = Convert.ToInt32(ddlDorDiaDia.SelectedValue);
            objAnamnese.NR_HAB_6 = Convert.ToInt32(ddlVontadeLazer.SelectedValue);
            objAnamnese.NR_HAB_7 = Convert.ToInt32(ddlDificDormir.SelectedValue);
            objAnamnese.NR_HAB_8 = Convert.ToInt32(ddlRemedioDormir.SelectedValue);
            objAnamnese.NR_HAB_9 = Convert.ToInt32(ddlMemoria.SelectedValue);
            objAnamnese.NR_HAB_10 = Convert.ToInt32(ddlVisual.SelectedValue);
            objAnamnese.NR_HAB_11_1 = ckbPele1.Checked ? 1 : 0;
            objAnamnese.NR_HAB_11_2 = ckbPele2.Checked ? 1 : 0;
            objAnamnese.NR_HAB_11_3 = ckbPele3.Checked ? 1 : 0;
            objAnamnese.NR_HAB_11_4 = ckbPele4.Checked ? 1 : 0;
            objAnamnese.NR_HAB_11_5 = ckbPele5.Checked ? 1 : 0;
            objAnamnese.NR_HAB_11_6 = ckbPele6.Checked ? 1 : 0;

            objAnamnese.NR_HAB_13 = Convert.ToInt32(ddlEscutar.SelectedValue);
            objAnamnese.NR_HAB_12 = Convert.ToInt32(ddlHigieneBucal.SelectedValue);
            objAnamnese.NR_HAB_14 = Convert.ToInt32(ddlHigieneCorp.SelectedValue);
            
            objAnamnese.NR_ALI_1 = Convert.ToInt32(ddlAlimentacao.SelectedValue);
            objAnamnese.NR_ALI_2 = Convert.ToInt32(ddlEngasgo.SelectedValue);
            objAnamnese.NR_ALI_3 = Convert.ToInt32(ddlEstNutri.SelectedValue);
            objAnamnese.DS_ALI_4 = txtLiquido.Text;
            objAnamnese.NR_ALI_5 = Convert.ToInt32(ddlAbdome.SelectedValue);
            objAnamnese.NR_ALI_5_1 = Convert.ToInt32(ddlAbdomeRha.SelectedValue);
            objAnamnese.NR_ALI_5_2 = Convert.ToInt32(ddlVisceromegalia.SelectedValue);
            objAnamnese.NR_ALI_5_3 = Convert.ToInt32(ddlMassaPalp.SelectedValue);
            objAnamnese.NR_ALI_5_OBS = txtObsLocal.Text;
            objAnamnese.NR_ALI_6 = Convert.ToInt32(ddlCorUrina.SelectedValue);
            objAnamnese.NR_ALI_7 = Convert.ToInt32(ddlEliminacaoUrinaria.SelectedValue);
            objAnamnese.NR_ALI_7_1 = Convert.ToInt32(txtDebUrunario.Text);
            objAnamnese.NR_ALI_8 = Convert.ToInt32(ddlConsiFezes.SelectedValue);
            objAnamnese.NR_ALI_9 = Convert.ToInt32(ddlEliminacaoIntestinal.SelectedValue);
            objAnamnese.NR_ALI_9_1 = Convert.ToInt32(ddlFrequenciaIntest.SelectedValue);

            objAnamnese.NR_ALI_10_PLEGIA_MMSS = ckbMmssPlegia.Checked ? 1 : 0;
            objAnamnese.NR_ALI_10_PARESIA_MMSS = ckbMmssParesia.Checked ? 1 : 0;
            objAnamnese.NR_ALI_10_PARESTIA_MMSS = ckbMmssParestia.Checked ? 1 : 0;
            objAnamnese.NR_ALI_10_AMPUTACAO_MMSS = ckbMmssAmputacao.Checked ? 1 : 0;
            objAnamnese.NR_ALI_10_PLEGIA_MMII = ckbMmiiPlegia.Checked ? 1 : 0;
            objAnamnese.NR_ALI_10_PARESIA_MMII = ckbMmiiParesia.Checked ? 1 : 0;
            objAnamnese.NR_ALI_10_PARESTIA_MMII = ckbMmiiParestia.Checked ? 1 : 0;
            objAnamnese.NR_ALI_10_AMPUTACAO_MMII = ckbMmiiAmputacao.Checked ? 1 : 0;
            
            objAnamnese.NR_AVALIACAO = Convert.ToInt32(ddlAvaliacaoAnamnese.SelectedValue);
            objAnamnese.DS_AVALIACAO_JUSTIFICATIVA = txtJustificativaAnamnse.Text;
            
            objAnamnese.DS_DADOS_PA = txtPa.Text;
            objAnamnese.DS_DADOS_FR = txtFr.Text;
            objAnamnese.DS_DADOS_T = txtTemp.Text;
            objAnamnese.DS_DADOS_P = txtPressao.Text;
            objAnamnese.DS_DADOS_AP = txtAp.Text;
            objAnamnese.DS_DADOS_AC = txtAc.Text;
            
            return objAnamnese;
        }

        protected Boolean ValidarForm()
        {

            if (rblSaude.SelectedValue == "1")
            {

                if (!CkbHAS.Checked && !CkbDM.Checked && !CkbAVE.Checked && !CkbALZHEIMER.Checked && !CkbNEOPLASIAS.Checked && !CkbARTROSES.Checked && !CkbOUTROS.Checked)
                {
                    txtTituloMsn.Text = "ALERTA";
                    txtTextoMsn.Text = "Selecione algum problema de saúde!";
                    rblSaude.Focus();
                    return false;
                }else
                {
                    if (CkbOUTROS.Checked && txtOutrosSaude.Text == "")
                    {
                        txtTituloMsn.Text = "ALERTA";
                        txtTextoMsn.Text = "Favor preencher o campo outros em problemas de saúde!";
                        txtOutrosSaude.Focus();
                        return false;
                    }
                }

            }

            if (ddlFumante.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Você é fumante?";
                ddlFumante.Focus();
                return false;
            }

            if (txtQueixas.Text.Length < 5)
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: O que está sentindo nesse momento?";
                ddlFumante.Focus();
                return false;
            }


            if (ddlEstConsciencia.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Estado de consciencia";
                ddlEstConsciencia.Focus();
                return false;
            }


            if (ddlEstEmocional.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Estado de emocional";
                ddlEstEmocional.Focus();
                return false;
            }

            if (ddlComunicacao.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Comunicação";
                ddlComunicacao.Focus();
                return false;
            }

            if (!ckbAparenGeral1.Checked && !ckbAparenGeral2.Checked && !ckbAparenGeral3.Checked && !ckbAparenGeral4.Checked && !ckbAparenGeral5.Checked)
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher pelo menos 1 item: Aparência Geral";
                ckbAparenGeral1.Focus();
                return false;
            }

            if (ddlDorDiaDia.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Você sem dor no dia-a-dia?";
                ddlDorDiaDia.Focus();
                return false;
            }

            if (ddlVontadeLazer.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Você sentre vontade para fazer atividades de doversão/lazer?";
                ddlVontadeLazer.Focus();
                return false;
            }

            if (ddlDificDormir.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Você te dificuldade para dormir?";
                ddlDificDormir.Focus();
                return false;
            }

            if (ddlRemedioDormir.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Você depende de algum remédio para dormir?";
                ddlRemedioDormir.Focus();
                return false;
            }

            if (ddlMemoria.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Você costuma ter esquecimentos no seu dia-a-dia?";
                ddlMemoria.Focus();
                return false;
            }

            if (ddlVisual.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Você tem dificuldade de enxergar?";
                ddlVisual.Focus();
                return false;
            }

            if (ddlEscutar.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Você tem dificuldade de escutar?";
                ddlEscutar.Focus();
                return false;
            }

            if (ddlHigieneBucal.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Higiene Bucal";
                ddlHigieneBucal.Focus();
                return false;
            }

            if (!ckbPele1.Checked && !ckbPele2.Checked && !ckbPele3.Checked && !ckbPele4.Checked && !ckbPele5.Checked)
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher pelo menos 1 item: Pele";
                ckbPele1.Focus();
                return false;
            }

            if (ddlHigieneCorp.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Higiene Corporal";
                ddlHigieneCorp.Focus();
                return false;
            }

            if (ddlAlimentacao.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Quantas vezes você se alimenta po dia?";
                ddlAlimentacao.Focus();
                return false;
            }

            if (ddlEngasgo.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Você apresenta engasgos durante a alimentação?";
                ddlEngasgo.Focus();
                return false;
            }

            if (ddlEstNutri.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Estado nutricional";
                ddlEstNutri.Focus();
                return false;
            }

            if (txtLiquido.Text.Length == 0)
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Qual a quantidade de liquido que você ingere por dia?";
                txtLiquido.Focus();
                return false;
            }

            if (ddlAbdome.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Abdome";
                ddlAbdome.Focus();
                return false;
            }

            if (ddlAbdomeRha.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Abdome RHA";
                ddlAbdomeRha.Focus();
                return false;
            }

            if (ddlVisceromegalia.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Visceromegalia";
                ddlAbdome.Focus();
                return false;
            }

            if (ddlMassaPalp.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Massa palpável";
                ddlAbdome.Focus();
                return false;
            }
            if (ddlCorUrina.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Normalmente, qual é a cor da sua urina?";
                ddlCorUrina.Focus();
                return false;
            }

            if (ddlEliminacaoUrinaria.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Eliminação urinaria";
                ddlEliminacaoUrinaria.Focus();
                return false;
            }

            if (string.IsNullOrEmpty(txtDebUrunario.Text))
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Débito urinário";
                ddlEliminacaoUrinaria.Focus();
                return false;
            }

            if (ddlConsiFezes.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Normalmente, qual é a consistência de suas fezes?";
                ddlConsiFezes.Focus();
                return false;
            }

            if (ddlEliminacaoIntestinal.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Eliminação Intestinal";
                ddlEliminacaoIntestinal.Focus();
                return false;
            }

            if (ddlFrequenciaIntest.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: Frequência de Eliminação Intestinal";
                ddlEliminacaoIntestinal.Focus();
                return false;
            }


            if (ddlAvaliacaoAnamnese.SelectedValue == "0")
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: classifique o grau de comprometimento clínico encontrado";
                ddlAvaliacaoAnamnese.Focus();
                return false;
            }else
            {
                if (txtJustificativaAnamnse.Text.Length < 5)
                {
                    txtTituloMsn.Text = "ALERTA";
                    txtTextoMsn.Text = "Favor preencher: Justificativa:";
                    txtJustificativaAnamnse.Focus();
                    return false;
                }
            }

            

            if (txtPa.Text.Length == 0)
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: PA";
                txtPa.Focus();
                return false;
            }

            if (txtFr.Text.Length == 0)
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: FR";
                txtFr.Focus();
                return false;
            }

            if (txtTemp.Text.Length == 0)
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: T";
                txtTemp.Focus();
                return false;
            }

            if (txtPressao.Text.Length == 0)
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: P";
                txtPressao.Focus();
                return false;
            }

            if (txtAp.Text.Length == 0)
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: AP";
                txtAp.Focus();
                return false;
            }
            if (txtAc.Text.Length == 0)
            {
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Favor preencher: AC";
                txtAc.Focus();
                return false;
            }

            return true;
        }

        protected void CarregarMedicamento()
        {
            var list = metMed.ListaMedUsuario(Convert.ToInt32(hdfCodUsuario.Value));
            gridMedicamentos.DataSource = list;
            gridMedicamentos.DataBind();
        }

        protected void btnSalvarDm1_Click(object sender, EventArgs e)
        {
            if(ValidarForm())
            {
                var obj = CarregarObjeto();
                obj.DT_INCLUSAO = DateTime.Now;
                var objGravado = metAna.Incluir(obj);
                hdfCodAnamnese.Value = objGravado.CO_ANAMNESE.ToString();
                btnEditarDm1.Visible = true;
                btnEditPros.Visible = true;
                btnSalvarDm1.Visible = false;
                btnSalvaPros.Visible = false;
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Dados gravados com sucesso!";
                ModalPopupMsn.Show();
            }
            else
            {
                ModalPopupMsn.Show();
            }
        }

        protected void btnSalvaPros_Click(object sender, EventArgs e)
        {
            if (ValidarForm())
            {
                var obj = CarregarObjeto();
                obj.DT_INCLUSAO = DateTime.Now;
                var objGravado = metAna.Incluir(obj);
                hdfCodAnamnese.Value = objGravado.CO_ANAMNESE.ToString();
                Response.Redirect("/atendimento/Forms/FormAvd.aspx");
            }
            
        }



        protected void btnEditarDm1_Click(object sender, EventArgs e)
        {
            if (ValidarForm())
            {
                var obj = CarregarObjeto();
                obj.CO_ANAMNESE = Convert.ToInt32(hdfCodAnamnese.Value);
                metAna.Alterar(obj);
                txtTituloMsn.Text = "ALERTA";
                txtTextoMsn.Text = "Dados alterados com sucesso!";
                ModalPopupMsn.Show();
            }
            else
            {
                ModalPopupMsn.Show();
            }
        }

        protected void btnEditPros_Click(object sender, EventArgs e)
        {
            if (ValidarForm())
            {
                var obj = CarregarObjeto();
                obj.CO_ANAMNESE = Convert.ToInt32(hdfCodAnamnese.Value);
                metAna.Alterar(obj);
                Response.Redirect("/atendimento/Forms/FormAvd.aspx");
            }
            
        }

        protected void gridMedicamentos_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            int id = Convert.ToInt32(e.CommandArgument);

            switch (e.CommandName)
            {
                case "Excluir":
                    metMed.ExcluirMedUsuario(id);
                    CarregarMedicamento();
                    txtTituloMsn.Text = "ALERTA";
                    txtTextoMsn.Text = "Medicamento excluido com sucesso!";
                    ModalPopupMsn.Show();
                    break;
            }
        }

    }
}